﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Peekaboo2008.model;
using Peekaboo2008.dao;

namespace Peekaboo2008.view
{
    public partial class FormChiTietKhuVuc : Form
    {
        private KhuVucModel khuVucModel = null;
        private FormKhuVuc formKhuVuc;
        private FormChiTietKhachHang formChiTietKhachHang;
        private Int32 flag = 0;
        private FormChiTietNhaCungCap formChiTietNhaCungCap;

        public FormChiTietKhuVuc()
        {
            InitializeComponent();
            FormChiTietKhuVucLoad();
            txtTenKhuVuc.Focus();
        }

        public FormChiTietKhuVuc(ref FormKhuVuc _formKhuVuc)
        {
            InitializeComponent();
            FormChiTietKhuVucLoad();
            formKhuVuc = _formKhuVuc;
            txtTenKhuVuc.Focus();
        }

        public FormChiTietKhuVuc(ref FormChiTietKhachHang _formChiTietKhachHang)
        {
            InitializeComponent();
            FormChiTietKhuVucLoad();
            formChiTietKhachHang = _formChiTietKhachHang;
            // them nhanh khu vuc tu form chi tiet khach hang
            txtTenKhuVuc.Focus();
            flag = 1;
        }
        public FormChiTietKhuVuc(ref FormChiTietNhaCungCap _formChiTietNhaCungCap)
        {
            InitializeComponent();
            FormChiTietKhuVucLoad();
            formChiTietNhaCungCap = _formChiTietNhaCungCap;
            // them nhanh khu vuc tu form chi tiet khach hang
            flag = 2;
        }

        public FormChiTietKhuVuc(KhuVucModel _khuVucModel, ref FormKhuVuc _formKhuVuc)
        {
            InitializeComponent();
            FormChiTietKhuVucLoad();
            formKhuVuc = _formKhuVuc;
            // load details khu vuc
            khuVucModel = _khuVucModel;
            txtTenKhuVuc.Text = khuVucModel.Ten;
            txtGhiChu.Text = khuVucModel.GhiChu;
        }

        public void FormChiTietKhuVucLoad()
        {
            this.KeyPreview = true;
            this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FormChiTietKhuVuc_KeyDown);
        }

        private void FormChiTietKhuVuc_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.F8)
            {
                btnChapNhan.PerformClick();
            }
            else if (e.KeyCode == Keys.F12)
            {
                this.Dispose();
            }
            else if (e.KeyCode == Keys.Escape)
            {
                this.Dispose();
            }
        }

        private void btnChapNhan_Click(object sender, EventArgs e)
        {
            if (txtTenKhuVuc.Text.Equals(""))
            {
                MessageBox.Show("Tên Khu Vực Không Được Bỏ Trống");
            }
            else
            {
                if (khuVucModel == null)
                {
                    khuVucModel = new KhuVucModel();
                }
                khuVucModel.Ten = txtTenKhuVuc.Text;
                khuVucModel.GhiChu = txtGhiChu.Text;
                //new khu vực
                if (khuVucModel.MaKhuVuc == null || khuVucModel.MaKhuVuc == "")
                {
                    if (KhuVucDAO.insert(khuVucModel))
                    {
                        MessageBox.Show("Thêm khu vực thành công");
                        if (flag == 1)
                        {
                            formChiTietKhachHang.FormChiTietKhachHangLoad();
                        }
                        else if (flag == 2)
                        {
                            formChiTietNhaCungCap.FormChiTietNhaCungCapLoad();
                        }
                        else
                        {
                            formKhuVuc.FormKhuVucLoad();
                        }
                        this.Dispose();
                    }
                    else
                    {
                        MessageBox.Show("Thêm khu vực thất bại");
                    }
                }
                //update khu vuc
                else
                {
                    if (KhuVucDAO.update(khuVucModel))
                    {
                        MessageBox.Show("Cập nhật khu vực thành công");
                        formKhuVuc.FormKhuVucLoad();
                        this.Dispose();
                    }
                    else
                    {
                        MessageBox.Show("Cập nhật khu vực thất bại");
                    }
                }
            }
        }

        private void btnKetThuc_Click(object sender, EventArgs e)
        {
            this.Dispose();
        }
    }
}
